Azure Blob Storage
https://gyazo.com/0a731409ee63a530b62b3b5aa90237f5
初心者でも簡単で使いやすい!!(個人意見)
データ突っ込んで、リンク使う
競合
構成
https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F176243%2F12c59646-8f2a-87e7-55aa-4e749505b538.png?ixlib=rb-1.2.2&auto=compress%2Cformat&gif-q=60&w=1400&fit=max&s=f1404b0836a91004c75bb5a66e4fb0b4
対応データ
様々なメディア
公式
hr.icon
例
Front:フォームでファイルアップロード→
Server-side:ファイル受け取り&apiで送る→
Blob:ストレージへ保存(Azure Blob Storage)
Blob:保存したURLを送る(Azure Blob Storage)←
Server-side:URL受け取り、処理
Server-side:別のStorageに保存&完了通知←
Front:完了メッセージ
Dir
project
temp
sample.json
js
upload.js
code:upload.sh
pwd // project
node js/upload.js
code:blob-upload-local.js
// ローカルファイルのパスを指定して、Blobストレージに保存&blobのURL返す
// 細かい設定は、GitHubへ
async function uploadLocalFile(aborter, containerURL, filePath) {
//相対pathから絶対pathを取得
filePath = path.resolve(filePath);
const fileName = path.basename(filePath);
const blockBlobURL = BlockBlobURL.fromContainerURL(containerURL, fileName);
await uploadFileToBlockBlob(aborter, filePath, blockBlobURL);
return blockBlobURL
}
// 以下実行
// ローカルファイルで渡すなら、ファイルのパス必要
const localFilePath ="./temp/sample.json"
//serverのtempファイルをblobにアップロード&blobのURL返す
const blobURL = await uploadLocalFile(aborter, containerURL, localFilePath);
console.log(blobURL)
hr.icon
困りごと
アップロード
うまくいってたのに、byte0に
処理間に合ってない
form upload(ui)→temp(server)→upload(blob)→delete temp(server)
参考